<?xml version='1.0' encoding='UTF-8' ?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://xmlns.jcp.org/jsf/html"
      xmlns:p="http://primefaces.org/ui"
      xmlns:f="http://java.sun.com/jsf/core">
    <h:head>
        <title>SIYUGI</title>
    </h:head>
    <h:body>
        <h:form id="form">
            <p:growl id="mess" />
            <br/>
            <center>
                <p:outputLabel value="YUGI-OH - 11.07.2014" style="font-size: 30px" />
                <br/>
                <p:tabView id="tabView">
                    <p:tab title="Juego"><center>
                        <p:dataTable id="tblJuego" var="car" value="#{mantenimientoBean.listaCartaJuego}"
                                     selectionMode="single" selection="#{mantenimientoBean.cartaJuegoSelec}" rowKey="#{car.idCarta}"
                                     rows="10" paginator="true" paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
                                     rowsPerPageTemplate="5,10,15">
                            <p:column headerText="Nombre">
                                <h:outputText value="#{car.nombre}" />
                            </p:column>
                            <p:column headerText="Ataque">
                                <h:outputText value="#{car.ataque}" />
                            </p:column>
                            <p:column headerText="Defensa">
                                <h:outputText value="#{car.defensa}" />
                            </p:column>
                            <p:column headerText="Tipo de Carta">
                                <h:outputText value="#{car.tipoCarta.nombre}" />
                            </p:column>
                            <p:column headerText="Planeta">
                                <h:outputText value="#{car.planeta.nombre}" />
                            </p:column>
                            <p:column style="width:32px;text-align: center">
                                <p:commandButton icon="ui-icon-trash" update="tblJuego"
                                                 actionListener="#{mantenimientoBean.eliminarCarta(car)}" />
                            </p:column>
                        </p:dataTable><br/><br/></center>
                        <p:panelGrid columns="3" id="panGridCartaJuego">
                            <p:outputLabel value="Carta:" />
                            <p:selectOneMenu id="cartaJuego" value="#{mantenimientoBean.idCartaJuegoSelec}"  
                                             filter="true" filterMatchMode="startsWith">
                               <f:selectItem itemLabel="Seleccione" itemValue="0" />
                                <f:selectItems value="#{mantenimientoBean.listaCarta}" var="carta"
                                               itemLabel="#{carta.nombre}" itemValue="#{carta.idCarta}" />
                            </p:selectOneMenu>
                            <p:commandButton value="Agregar" actionListener="#{mantenimientoBean.agregarCartaJuego()}"
                                                 update=":form:mess :form:tabView:tblJuego :form:tabView:panGridCartaJuego"/>
                        </p:panelGrid><br/>
                        <p:commandButton value="Combinación" actionListener="#{mantenimientoBean.combinacionResultado()}" 
                                         update="tblResult"/><br/><br/><center>
                        <p:dataTable id="tblResult" var="car" value="#{mantenimientoBean.combModel}">
                            <p:column headerText="Validez">
                                <h:outputText value="#{car.valida}" />
                            </p:column>
                            <p:column headerText="Cartas">
                                <h:outputText value="#{car.cartas}" />
                            </p:column>
                            <p:column headerText="Combinacion">
                                <h:outputText value="#{car.cartaCombinada}" />
                            </p:column>
                            <p:column headerText="Ataque">
                                <h:outputText value="#{car.ataque}" />
                            </p:column>
                            <p:column headerText="Defensa">
                                <h:outputText value="#{car.defensa}" />
                            </p:column>
                        </p:dataTable></center>
                    </p:tab>
                    <p:tab title="Combinación">
                        <p:dataTable id="tblComb" var="car" value="#{mantenimientoBean.listaCartaComb}"
                                     selectionMode="single" selection="#{mantenimientoBean.cartaCombSelec}" rowKey="#{car.idCarta}"
                                     rows="10" paginator="true" paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
                                     rowsPerPageTemplate="5,10,15">
                            <p:column headerText="Nombre">
                                <h:outputText value="#{car.nombre}" />
                            </p:column>
                            <p:column headerText="Ataque">
                                <h:outputText value="#{car.ataque}" />
                            </p:column>
                            <p:column headerText="Defensa">
                                <h:outputText value="#{car.defensa}" />
                            </p:column>
                            <p:column headerText="Tipo de Carta">
                                <h:outputText value="#{car.tipoCarta.nombre}" />
                            </p:column>
                            <p:column headerText="Planeta">
                                <h:outputText value="#{car.planeta.nombre}" />
                            </p:column>
                        </p:dataTable><br/><br/>
                        <p:panelGrid columns="3" id="panGridCartaComb">
                            <p:outputLabel value="Carta:" />
                            <p:selectOneMenu id="cartaComb" value="#{mantenimientoBean.idCartaCombSelec}"  
                                             filter="true" filterMatchMode="startsWith">
                               <f:selectItem itemLabel="Seleccione" itemValue="0" />
                                <f:selectItems value="#{mantenimientoBean.listaCarta}" var="carta"
                                               itemLabel="#{carta.nombre}" itemValue="#{carta.idCarta}" />
                            </p:selectOneMenu>
                            <p:commandButton value="Agregar" actionListener="#{mantenimientoBean.agregarCartaComb()}"
                                                 update=":form:mess :form:tabView:tblComb :form:tabView:panGridCartaComb"/>
                        </p:panelGrid><br/><br/>
                        <p:outputLabel value="Carta combinada:"/>
                        <p:selectOneMenu id="cartaNueva" value="#{mantenimientoBean.idCartaNuevaComb}"  
                                             filter="true" filterMatchMode="startsWith">
                               <f:selectItem itemLabel="Seleccione" itemValue="0" />
                                <f:selectItems value="#{mantenimientoBean.listaCarta}" var="carta"
                                               itemLabel="#{carta.nombre}" itemValue="#{carta.idCarta}" />
                        </p:selectOneMenu>
                        <br/><br/>
                        <p:outputLabel value="Combinación:"/>
                        <p:selectOneMenu id="valido" value="#{mantenimientoBean.validoSelec}"  
                                             filter="true" filterMatchMode="startsWith">
                               <f:selectItem itemLabel="Valido" itemValue="Valido" />
                               <f:selectItem itemLabel="Invalido" itemValue="Invalido" />
                        </p:selectOneMenu><br/><br/>
                        <p:commandButton value="Agregar combinacion" update=":form:mess :form:tabView:tblComb"
                                         actionListener="#{mantenimientoBean.agregarCombinacion()}" /><br/><br/>
                    </p:tab>
                    <p:tab title="Mantenimiento">
                        <p:dataTable id="singleDT" var="car" value="#{mantenimientoBean.listaCarta}"
                                     selectionMode="single" selection="#{mantenimientoBean.cartaSelec}" rowKey="#{car.idCarta}"
                                     rows="10" paginator="true" paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
                                     rowsPerPageTemplate="5,10,15">
                            <p:column headerText="Nombre">
                                <h:outputText value="#{car.nombre}" />
                            </p:column>
                            <p:column headerText="Ataque">
                                <h:outputText value="#{car.ataque}" />
                            </p:column>
                            <p:column headerText="Defensa">
                                <h:outputText value="#{car.defensa}" />
                            </p:column>
                            <p:column headerText="Tipo de Carta">
                                <h:outputText value="#{car.tipoCarta.nombre}" />
                            </p:column>
                            <p:column headerText="Planeta">
                                <h:outputText value="#{car.planeta.nombre}" />
                            </p:column>
                        </p:dataTable><br/><br/>
                        <p:panelGrid columns="3" id="panGridCarta">
                            <p:outputLabel value="Nombre:"/>
                            <p:inputText value="#{mantenimientoBean.nombreCarta}" />
                            <p:outputLabel />
                            <p:outputLabel value="Ataque:"/>
                            <p:inputText value="#{mantenimientoBean.ataque}" />
                            <p:outputLabel />
                            <p:outputLabel value="Defensa:"/>
                            <p:inputText value="#{mantenimientoBean.defensa}" />
                            <p:outputLabel />
                            <p:outputLabel value="Tipo de Carta:" />
                            <p:selectOneMenu id="tipoCarta" value="#{mantenimientoBean.idTipoCartaSelec}"  
                                             filter="true" filterMatchMode="startsWith">
                                <f:selectItem itemLabel="Seleccione" itemValue="0" />
                                <f:selectItems value="#{mantenimientoBean.listaTipoCarta}" var="tipo"
                                               itemLabel="#{tipo.nombre}" itemValue="#{tipo.idTipo}" />
                            </p:selectOneMenu>
                            <p:commandButton value="Agregar" type="button" onclick="PF('dlg1').show();"/>
                            <p:outputLabel value="Planeta:" />
                            <p:selectOneMenu id="planeta" value="#{mantenimientoBean.idPlanetaSelec}"  
                                             filter="true" filterMatchMode="startsWith">
                                <f:selectItem itemLabel="Seleccione" itemValue="0" />
                                <f:selectItems value="#{mantenimientoBean.listaPlaneta}" var="planeta"
                                               itemLabel="#{planeta.nombre}" itemValue="#{planeta.idPlaneta}" />
                            </p:selectOneMenu>
                            <p:commandButton value="Agregar" type="button" onclick="PF('dlg2').show();"/>
                        </p:panelGrid><br/><br/>
                        <p:commandButton value="Agregar" actionListener="#{mantenimientoBean.agregarCarta()}"
                                         update=":form:mess :form:tabView:panGridCarta :form:tabView:cartaJuego 
                                         :form:tabView:cartaComb :form:tabView:cartaNueva :form:tabView:singleDT"/>
                    </p:tab>
                </p:tabView>
            </center>
        </h:form>
        <p:dialog header="Agregar Tipo de Carta" widgetVar="dlg1" modal="true">
            <h:form id="formTipoCarta">
                <center>
                    <p:panelGrid columns="2" id="panGridTipoCarta">
                        <p:outputLabel value="Nombre:"/>
                        <p:inputText value="#{mantenimientoBean.nombreTipoCarta}" />
                    </p:panelGrid><br/><br/>
                    <p:commandButton value="Agregar" actionListener="#{mantenimientoBean.agregarTipoCarta()}" 
                                     update=":form:mess :form:tabView:tipoCarta :formTipoCarta:panGridTipoCarta"/>
                </center>
            </h:form>
        </p:dialog> 
        <p:dialog header="Agregar Planeta" widgetVar="dlg2" modal="true">
            <h:form id="formPlaneta">
                <center>
                    <p:panelGrid columns="2" id="panGridPlaneta">
                        <p:outputLabel value="Nombre:"/>
                        <p:inputText value="#{mantenimientoBean.nombrePlaneta}" />
                        <p:outputLabel value="Poder:"/>
                        <p:inputText value="#{mantenimientoBean.poder}" />
                    </p:panelGrid><br/><br/>
                    <p:commandButton value="Agregar" actionListener="#{mantenimientoBean.agregarPlaneta()}" 
                                     update=":form:mess :form:tabView:planeta :formPlaneta:panGridPlaneta"/>
                </center>
            </h:form>
        </p:dialog> 
    </h:body>
</html>

